package trastienda.bean;

import javax.faces.application.FacesMessage;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;

import trastienda.dao.ProductoDAO;
import trastienda.excepcion.DAOExcepcion;
import trastienda.modelo.Categoria;
import trastienda.modelo.Producto;

public class ProductBean {
	
	private int idProducto;
	private int categoria;
	private String nombre;
	private String descripcion;
	private double precio;
	private int stock;
	private int importancia;
	private String imagen;
	
	public int getIdProducto() {
		return idProducto;
	}
	public void setIdProducto(int idProducto) {
		this.idProducto = idProducto;
	}
	public int getCategoria() {
		return categoria;
	}
	public void setCategoria(int categoria) {
		this.categoria = categoria;
	}
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getDescripcion() {
		return descripcion;
	}
	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}
	public double getPrecio() {
		return precio;
	}
	public void setPrecio(double precio) {
		this.precio = precio;
	}
	public int getStock() {
		return stock;
	}
	public void setStock(int stock) {
		this.stock = stock;
	}
	public int getImportancia() {
		return importancia;
	}
	public void setImportancia(int importancia) {
		this.importancia = importancia;
	}
	public String getImagen() {
		return imagen;
	}
	public void setImagen(String imagen) {
		this.imagen = imagen;
	}
	
	public String listar() {
		System.out.println("ProductoBean: listar()");
		ProductoDAO dao = new ProductoDAO();
		ExternalContext context = FacesContext.getCurrentInstance()
				.getExternalContext();
		HttpSession session = (HttpSession) context.getSession(true);
		try {
			session.setAttribute("USUARIO_LISTADO", dao.listarProductos());
		} catch (DAOExcepcion e) {
			System.err.println(e.getMessage());
			FacesContext.getCurrentInstance().addMessage(null,
					new FacesMessage("Hubo un problema: " + e.getMessage()));
			return "error";
		}
		return "usuarioBean_listar";
	}

	public String insertar() {
		System.out.println(idProducto);
		System.out.println(categoria);
		System.out.println(nombre);
		System.out.println(descripcion);
		System.out.println(precio);
		System.out.println(stock);
		System.out.println(importancia);
		System.out.println(imagen);
		
		Producto vo = new Producto();
			vo.setIdProducto(idProducto);
			vo.setCategoria(categoria);
			vo.setNombre(nombre);
			vo.setDescripcion(descripcion);
			vo.setPrecio(precio);
			vo.setStock(stock);
			vo.setImportancia(importancia);
			vo.setImagen(imagen);
		
		ProductoDAO dao	= new ProductoDAO();
		try {
			dao.insertar(vo);
		} catch (DAOExcepcion e) {
			System.err.println(e.getMessage());
			FacesContext.getCurrentInstance().addMessage(null,
					new FacesMessage("Hubo un problema: " + e.getMessage()));
			return "error";
		}
		return listar();
	}

	public String nuevo() {
		return "productoBean_nuevo";
	}
	
	public String buscar() {
		System.out.println("ProductoBean: buscar()");
		return "buscar";
	}
	
		}
	

